Package-level declarations

Types

Link copied to clipboard
abstract class AbstractIncrementalAnalyzer<T, R>(historyStore: ChunkHistoryStore, formatter: IncrementalSourceFormatter<T>, config: WindowConfig = WindowConfig(), contentHasher: ContentHasher = Sha256ContentHasher) : IncrementalAnalyzer<T, R>

Handy base implementation of IncrementalAnalyzer providing:

Link copied to clipboard
data class AnalysisBookmark(val sourceId: String, val endIndex: Int, val processedAt: Instant)

Resume marker for incremental source analysis within a ContextId.

Link copied to clipboard
data class BookmarkKey(val contextId: <Error class: unknown class>, val sourceId: String)

Composite key for per-source analysis bookmarks within a ContextId.

Link copied to clipboard

Tracks the history of processed chunks for incremental analysis. Enables deduplication and resumption of processing.

Link copied to clipboard
class ConversationSegmenter(maxSize: Int = DEFAULT_MAX_SIZE, settle: Duration = DEFAULT_SETTLE, minItems: Int = 1)

Splits a timestamped item stream (e.g. a chat channel's messages) into conversation segments, so each segment can be handed to IncrementalSource-based extraction as one conversation.

Link copied to clipboard
class ConversationSource(conversation: <Error class: unknown class>) : IncrementalSource<<Error class: unknown class>>

Adapts a Conversation to the IncrementalSource interface for incremental analysis.

Link copied to clipboard
data class HashKey(val contextId: <Error class: unknown class>, val contentHash: String)

Composite key for content-hash deduplication within a ContextId.

Link copied to clipboard
interface IncrementalAnalyzer<T, R>

Analyzes incremental sources (conversations, listening history, etc.) and produces results of type R.

Link copied to clipboard
interface IncrementalSource<T>

Represents a source of items that grows over time. Used for incremental processing of conversations, listening history, etc.

Link copied to clipboard

Formats items from an IncrementalSource into text for processing.

Link copied to clipboard

Thread-safe in-memory implementation for testing. Not intended for production use.

Link copied to clipboard
class MessageFormatter : IncrementalSourceFormatter<<Error class: unknown class>>

Formats conversation messages for proposition extraction.

Link copied to clipboard
data class ProcessedChunkRecord(val bookmarkKey: BookmarkKey, val hashKey: HashKey, val startIndex: Int, val endIndex: Int, val processedAt: Instant)

Record of a processed chunk, keyed by BookmarkKey and HashKey.

Link copied to clipboard
data class WindowConfig(val windowSize: Int = 20, val overlapSize: Int = 2, val triggerInterval: Int = 4)

Configuration for windowed processing.